現在、データベースのバックアップが存在しないので、BACKUP LOGを実行できません。BACKUP LOGが異常終了しています。
手順
データベース名: test
設定はそのまま
タスク名: トランザクションログのみ作成
内容はtestのトランザクションログを1分毎に取得するもの
ログファイルからジョブの履歴確認
失敗しているのは確認できた
ただ、エラーメッセージからわかりづらい
が、考えられるエラーの理由が長くてそちらに目が行く
code:error
選択した行の詳細
日付 2023/08/17...
ログ ジョブ履歴(HOST.トランザクションログのみ作成)
ステップID 1
サーバー HOST
ジョブ名 HOST.トランザクションログのみ作成
ステップ名 トランザクションログのみ作成
実行時間 00:00:01
SQL重大度 0
SQLメッセージID 0
メールを受け取るオペレーター
Net Send通知を受け取るオペレーター
ポケットベル通知を受け取るオペレーター
再試行の回数 0
メッセージ
次のユーザーとして実行: NT Service\SQLSERVERAGENT ...(略)...
説明: クエリ "BACKUP LOG test TO DISK = N'C:\Program Files\Mi..." の実行が次のエラーで失敗しました "現在、データベースのバックアップが存在しないので、BACKUP LOGを実行できません。BACKUP LOGが異常終了しています。" 考えられるエラーの理由: クエリに問題がある。"ResultSet"プロパティが正しく設定されていない、パラメータが正しく設定されていない、または接続が正しく確率されていない。...(略)...
生成されたSQLコマンド
code:sql
GO
GO
TO
DISK = N'C:\Program Files\(略)\test_backup_2023_08_17_(略).trn'
WITH
NOFORMAT
, NOINIT
, NAME = N'test_backup_2023_08_17_(略)'
, SKIP
, REWIND
, NOUNLOAD
, STATS = 10
, CHECKSUM
GO
declare @backupSetId as int
select
@backupSetId = position
from
msdb..backupset
where
database_name = N'test'
and backup_set_id = (
select
max(backup_set_id)
from
msdb..backupset
where
database_name = N'test'
)
if @backupSetId is null begin raiserror(N'確認に失敗しました。データベース ''test'' のバックアップ情報が見つかりません。', 16, 1) end
RESTORE VERIFYONLY FROM DISK = N'C:\Program Files\(略)\test_backup_2023_08_17_(略).trn'
WITH
FILE = @backupSetId
, NOUNLOAD
, NOREWIND
これを実行した結果
code:error
メッセージ 4214、レベル 16、状態 1、行 x(BACKUP LOGコマンド開始行)
現在、データベースのバックアップが存在しないので、BACKUP LOGを実行できません。
メッセージ 3013、レベル 16、状態 1、行 x(BACKUP LOGコマンド開始行)
BACKUP LOGが異常終了しています。
メッセージ 50000、レベル 16、状態 1、行 x(BACKUP LOG終了後のGO行)
確認に失敗しました。データベース 'test' のバックアップ情報が見つかりません。
メッセージ 3250、レベル 16、状態 0、行 x(declare行)
値 '0' はFILEパラメーターの範囲外です。
メッセージ 3013、レベル 16、状態 1、行 x(declare行)
VERIFY DATABASEが異常終了しています。
関連